<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>


    <meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Advanced SWF Utility Example With Flashvars and Javascript interaction</title>

<style type="text/css">
/*margin and padding on body element
  can introduce errors in determining
  element position and are not recommended;
  we turn them off as a foundation for YUI
  CSS treatments. */
body {
	margin:0;
	padding:0;
}
</style>

<link rel="stylesheet" type="text/css" href="../../build/fonts/fonts-min.css" />
<script type="text/javascript" src="../../build/yahoo-dom-event/yahoo-dom-event.js"></script>
<script type="text/javascript" src="../../build/element/element-min.js"></script>
<script type="text/javascript" src="../../build/swf/swf-min.js"></script>

<!--there is no custom header content for this example-->

</head>

<body class="yui-skin-sam">


<h1>Advanced SWF Utility Example With Flashvars and Javascript interaction</h1>

<div class="exampleIntro">
	<p>This example is an advanced demonstration of the <a href="../../swf/">YUI SWF</a> utility features.</p>

<p><strong>Note:</strong> This example of the YUI SWF Utility usage requires Flash Player 9.0.115 or higher. The latest version of Flash Player is available at the <a href="http://www.adobe.com/go/getflashplayer">Adobe Flash Player Download Center</a>.</p>			
</div>

<!--BEGIN SOURCE CODE FOR EXAMPLE =============================== -->

<div id="swfContainer" style="width:400px;height:200px">
	The version of the Flash player installed on your computer is outdated. Please download and install the newest version.
</div>

<script type="text/javascript">
    
    // Instantiate the parameters to pass to the SWF.
	// Note the scale and salign parameters.
	// The scale="noscale" specifies that the swf is to 
	// be displayed as is, without shrinking it or stretching it.
	// salign = "TL" specifies that the content of the swf
	// should be aligned to the top left of the viewport.
	// flashVars are the arbitrary variables passed to the SWF.
	// In our case, the SWF will display the names and content
	// of these variables.
	
	var params = {version: 9.115,
		          useExpressInstall: false,
		          allowScriptAccess: "always",
		          fixedAttributes:
				  {scale: "noscale", salign: "TL"},
				  flashVars: 
				  {foo: "One", bar: "Two"}
				 };

    // Create an instance of the swf and pass the parameters
	var mySWF = new YAHOO.widget.SWF("swfContainer", "assets/SWFExampleAdvanced.swf", params);
	
	// Subscribe to the swfReady event, which fires when the SWF has been instantiated
	// and becomes available for communication with Javascript
	mySWF.subscribe("swfReady", testFlash);
	
	// Subscribe to the textAdded event, which the SWF dispatches when an addText method
	// has been called on it.
    mySWF.subscribe("textAdded", logTextAdded);

	function testFlash () {
		// call addText method on the swf, passing some strings to it as arguments.
		mySWF.callSWF("addText", ["Sample text\n"]);
		mySWF.callSWF("addText", ["Another sample text\n"]);
	}
	
	// Handler for the textAdded event dispatched by SWF
	function logTextAdded () {
		YAHOO.log("Text has been added to the SWF");
	}

</script>
<!--END SOURCE CODE FOR EXAMPLE =============================== -->

</body>
</html>
